using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Collections.Generic;

namespace Amoo
{
    public partial class Comunidade_CadastroBannerHome : Code.Business.PageBase
    {
        protected void Page_Load(object sender, EventArgs e)
        {

            if (!Page.IsPostBack)
            {
                Amoo.Code.Data.Comunidade oComunidade = new Amoo.Code.Data.Comunidade();
                PopularComboHierarquia(ddlFederal, oComunidade.GetAll("F"));
                oComunidade.Dispose();

                Carregar();
            }

            if (_EventTarget != "")
            {
                switch (_EventArgument)
                {
                    case "Inserir":
                        Salvar();
                        break;
                    case "Remover":
                        Remover();
                        break;
                    case "Retornar":
                        Response.Redirect("CadastroComunidade.aspx");
                        break;
                }
            }

        }

        public void PopularComboHierarquia(DropDownList pComboBox, List<Code.Entity.Comunidade> pListaComunidade)
        {
            ListItem lstItem;

            lstItem = new ListItem("Selecione", "-1");
            pComboBox.Items.Add(lstItem);

            foreach (Code.Entity.Comunidade eComunidade in pListaComunidade)
            {
                lstItem = new ListItem(eComunidade.dsNomeComunidade, eComunidade.idComunidade.ToString());
                pComboBox.Items.Add(lstItem);
            }
            pComboBox.DataBind();
        }

        protected void ddlFederal_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (Convert.ToInt32(ddlFederal.SelectedValue) > -1)
            {
                //hdnIdComunidadePai.Value = ddlFederal.SelectedValue.ToString();

                //ListarComunidades(Convert.ToInt32(ddlFederal.SelectedValue));

                Amoo.Code.Data.Comunidade oComunidade = new Amoo.Code.Data.Comunidade();
                PopularComboHierarquia(ddlEstadual, oComunidade.GetAll(Convert.ToInt32(ddlFederal.SelectedValue)));
                //lblTipoComunidade.Text = "Estaduais";
                Carregar(Convert.ToInt32(ddlFederal.SelectedValue));

                oComunidade.Dispose();
            }
            else
            {
                ddlEstadual.Items.Clear();
                ddlMunicipal.Items.Clear();

                Carregar();
                //lblTipoComunidade.Text = "Federais";
                //hdnIdComunidadePai.Value = "0";
            }
        }

        protected void ddlEstadual_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (Convert.ToInt32(ddlEstadual.SelectedValue) > -1)
            {
                //hdnIdComunidadePai.Value = ddlEstadual.SelectedValue.ToString();
                //ListarComunidades(Convert.ToInt32(ddlEstadual.SelectedValue));

                Amoo.Code.Data.Comunidade oComunidade = new Amoo.Code.Data.Comunidade();
                PopularComboHierarquia(ddlMunicipal, oComunidade.GetAll(Convert.ToInt32(ddlEstadual.SelectedValue)));

                //lblTipoComunidade.Text = "Municipais";
                Carregar(Convert.ToInt32(ddlEstadual.SelectedValue));

                oComunidade.Dispose();
            }
            else
            {
                ddlMunicipal.Items.Clear();
                Carregar(Convert.ToInt32(ddlFederal.SelectedValue));
                //lblTipoComunidade.Text = "Estaduais";
            }
        }

        protected void ddlMunicipal_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (Convert.ToInt32(ddlMunicipal.SelectedValue) > -1)
            {
                //hdnIdComunidadePai.Value = ddlMunicipal.SelectedValue.ToString();
                //ListarComunidades(Convert.ToInt32(ddlMunicipal.SelectedValue));
                //lblTipoComunidade.Text = "Privadas, Publicas ou Pessoais";
                Carregar(Convert.ToInt32(ddlMunicipal.SelectedValue));
            }
            else
            {
                ddlMunicipal.Items.Clear();
                Carregar(Convert.ToInt32(ddlEstadual.SelectedValue));
                //lblTipoComunidade.Text = "Municipais";
            }
        }

        private void Remover()
        {
            Code.Data.Banner oBanner = new Code.Data.Banner();
            Code.Entity.Banner eBanner = new Code.Entity.Banner()
            {
                idBanner = Convert.ToInt32(hdnId.Value),
                //idComunidade = Convert.ToInt32(Request.QueryString["idComunidade"])
            };
            eBanner.bolHome = false;

            oBanner.SetToHome(eBanner);

            //hdnId.Value = "";
            //txtPalavrasBusca.Text = "";

            Carregar();
        }

        private void Carregar()
        {
            Code.Data.Banner oBanner = new Code.Data.Banner();

            List<Code.Entity.Banner> oListaBanner = oBanner.GetAll();
            oBanner.Dispose();
            if (oListaBanner != null)
            {
                MontarLista(oListaBanner);
            }
        }

        private void Carregar(int pIdComunidade)
        {
            Code.Data.Banner oBanner = new Code.Data.Banner();

            List<Code.Entity.Banner> oListaBanner = oBanner.GetAll(pIdComunidade);
            oBanner.Dispose();

            if (oListaBanner != null)
            {
                MontarLista(oListaBanner);
            }


        }


        private void MontarLista(List<Code.Entity.Banner> pLista)
        {

            string strHTML = "";

            foreach (Code.Entity.Banner eBanner in pLista)
            {

                strHTML += "<div class='TableComunidades' style='position:relative; padding:5px 5px 5px 5px; float:left; width:130px; height:130px; text-align:center;'>";
                strHTML += "    <img src='/userfiles/" + eBanner.dsArquivo + "' width=100px height=100px/>";
                if (eBanner.bolHome)
                {
                    strHTML += "    <div style='position:absolute; top:110px; left:110px'><img src='/images/check.png' width=25px height=25px title='Remover do topo do site' style='cursor:hand;' onClick=SetIDValue(" + eBanner.idBanner + ");__doPostBack('Cadastro','Remover');></div>";
                }
                else
                {
                    strHTML += "    <div style='position:absolute; top:110px; left:110px'><img src='/images/disable.png' width=25px height=25px title='Vincular no topo do site' style='cursor:hand;' onClick=SetIDValue(" + eBanner.idBanner + ");__doPostBack('Cadastro','Inserir');></div>";
                }
                strHTML += "</div>";

            }

            dvListaNoticias.InnerHtml = strHTML;
        }

        private void Salvar()
        {
            Code.Data.Banner oBanner = new Code.Data.Banner();
            Code.Entity.Banner eBanner = new Code.Entity.Banner()
            {
                idBanner = Convert.ToInt32(hdnId.Value),
                //idComunidade = Convert.ToInt32(Request.QueryString["idComunidade"])
            };
            eBanner.bolHome = true;

            oBanner.SetToHome(eBanner);
            oBanner.Dispose();

            Carregar();


        }
    }
}
